package login;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;



@WebServlet("/index")
public class IndexServlet extends HttpServlet {

    // 计数器
    int count = 0;

    // 通过 重定向 到/index 这个页面, 浏览器发起的是 GET 请求
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //super.doGet(req, resp);
        // 先判断用户的登陆状态，如果没登陆，重定向到登陆状态
        // 登陆了，我们此处做一个简单的返回，就是会根据 会话中的用户名 来显示到页面上去
        // 这个操作不会触发 会话的创建, 注意是请求的  getSession
        // false 表示有用户则返回用户，没有也不会重新创建
        // 先获取 session对象
        HttpSession session = req.getSession(false);

        if(session == null) {
            // 未登录状态
            System.out.println("用户未登录");
            resp.sendRedirect("index.html");
            return;
        }
        count++;
        // 已经登陆 session.getAttribute 返回的类型是 Object 类型，需要强转成 String 类型
        String username = (String) session.getAttribute("username");
        // 构造页面
        resp.setContentType("text/html; charset=utf8");
        resp.getWriter().write("欢迎 " + username + " 回来！ 访问次数为" + count);

    }
}
